Method and device for determining a touch or touches

ABSTRACT

A method and device for determining a single touch or multiple touches is disclosed. A touch related sensing information with a single zero-crossing is used for determining a pair of values, and the locations of a pair of centroids are calculated depending on the pair of values. The distance between the locations of the pair of centroids can be used to determine whether the number of touches is one or more.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.61/298,252, filed on Jan. 26, 2010, Provisional Application No.61/298,243, filed on Jan. 26, 2010 and U.S. Provisional Application No.61/250,051, filed on Oct. 9, 2009, which is herein incorporated byreference for all intents and purposes.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method and device for determiningtouches, and more particularly, to a method and device for determining asingle touch or a plurality of touches.

2. Description of the Prior Art

Touch displays have been widely used in the various electronic devices.One approach is to employ a touch sensitive panel to define a 2-D toucharea on the touch display, where sensing information is obtained byscanning along horizontal and vertical axes of the touch panel fordetermining the touch or proximity of an external object (e.g. a finger)on or near the touch panel. U.S. Pat. No. 4,639,720 discloses acapacitive touch display.

Sensing information can be converted into a plurality of continuoussignal values by an analog-to-digital converter (ADC). By comparingsignal values before and after the touch or approaching of the externalobject, the position touched or approached by the external object can bedetermined.

Generally, a controller controlling the touch panel will first obtainsensing information when there is no external object touching orapproaching as a baseline. For example, in a capacitive touch panel,each conductive line corresponds to a respective baseline. Thecontroller determines whether there is an external object touching orapproaching by comparing sensing information obtained subsequently withthe baseline, and further determines the position of the externalobject. For example, when there is no external object touching orapproaching the touch panel, subsequent sensing information with respectto the baseline will be or close to zero. Thus, the controller candetermine whether there is an external object touching or approaching bydetermining whether the sensing information with respect to the baselineis or close to zero.

As shown in FIG. 1A, when an external object 12 (e.g. a finger) touchesor approaches a sensing device 120 of a touch display 10, sensinginformation of sensors 140 on an axis (e.g. x axis) is converted intosignal values as shown in FIG. 1B. Corresponding to the appearance ofthe finger, the signal values show a waveform or finger profile. Theposition of the peak 14 of the finger profile indicates the positiontouched or approached by the finger.

However, when multiple touches are close, signal values corresponding tothese touches tend to concentrate together, especially if the paths oftwo touches cross each other. In many situations, a single thresholdcannot determine whether it is a single or multiple touches, and thus itis difficult to make correct position judgments.

From the above it is clear that prior art still has shortcomings. Inorder to solve these problems, efforts have long been made in vain,while ordinary products and methods offering no appropriate structuresand methods. Thus, there is a need in the industry for a novel techniquethat solves these problems.

SUMMARY OF THE INVENTION

The present invention provides a method and device for determining asingle touch or multiple touches. A touch related sensing informationwith a single zero-crossing is used for determining a pair of values,and the locations of a pair of centroids are calculated depending on thepair of values. The distance between the locations of the pair ofcentroids can be used to determine whether the number of touches is oneor more.

As mentioned before, when multiple touches are close, signal valuescorresponding to these touches tend to concentrate together, especiallyif the paths of two touches cross each other. In many situations, asingle threshold cannot determine whether it is a single or multipletouches, and thus it is difficult to make correct position judgments.

The present invention includes the following objectives:

1. providing a differential sensing information to greatly reduce thenoise interference;

2. determining each position when the number of touches equals thenumber of zero-crossings;

3. determining each position when the number of touches does not equalthe number of zero-crossings;

4. determining whether there is a single or multiple touches based onthe properties of the differential sensing information; and

5. providing a dual-differential sensing information, and using aportion of touch related sensing information to determine whether thereis a single or multiple touches based on the properties of acorresponding differential sensing information.

The objectives of the present invention can be achieved by the followingtechnical schemes. A method for determining a touch or touches proposedby the present invention may include: obtaining a sensing information;determining each touch related sensing information in the sensinginformation; and analyzing each touch related sensing information havinga single zero-crossing to determine whether each touch related sensinginformation having a single zero-crossing indicates a touch or touches.In addition, a device for determining a touch or touches proposed by thepresent invention may include a controller or a host for performing thefollowing operations: obtaining a sensing information; determining eachtouch related sensing information in the sensing information; andanalyzing each touch related sensing information having a singlezero-crossing to determine whether each touch related sensinginformation having a single zero-crossing indicates a touch or touches.

The objectives of the present invention can also be achieved by thefollowing technical schemes. A method for determining a touch or touchesproposed by the present invention may include: obtaining a sensinginformation; determining each touch related sensing information in thesensing information; determining each touch related sensing informationhaving two peaks between zero-crossings; and analyzing each touchrelated sensing information having two peaks between zero-crossings todetermine whether each touch related sensing information having twopeaks between zero-crossings indicates a touch or touches. In addition,a device for determining a touch or touches proposed by the presentinvention may include a controller or a host for performing thefollowing operations: obtaining a sensing information; determining eachtouch related sensing information in the sensing information;determining each touch related sensing information having two peaksbetween zero-crossings; and analyzing each touch related sensinginformation having two peaks between zero-crossings to determine whethereach touch related sensing information having two peaks betweenzero-crossings indicates a touch or touches.

By aforementioned technical schemes, the present invention achieves atleast the following advantages and benefits:

1. a touched position can still be determined when the number ofzero-crossings presented in the sensing information is less than actualnumber of touches;

2. a touched position can still be determined when the number ofzero-crossings presented in the sensing information is more than actualnumber of touches;

3. determining whether there is a single or multiple touches based onthe properties of the differential sensing information is more accuratethan determining signal peak values; and

4. when the sensing information is dual-differential sensinginformation, determining whether there is a single or multiple touchesbased on the properties of the corresponding differential sensinginformation is more accurate than determining signal peak values.

The above description is only an outline of the technical schemes of thepresent invention. Preferred embodiments of the present invention areprovided below in conjunction with the attached drawings to enable onewith ordinary skill in the art to better understand said and otherobjectives, features and advantages of the present invention and to makethe present invention accordingly.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention can be more fully understood by reading thefollowing detailed description of the preferred embodiments, withreference made to the accompanying drawings, wherein:

FIG. 1A is a schematic diagram depicting a prior-art touch sensitivedevice;

FIG. 1B is a schematic diagram illustrating prior-art signal values;

FIG. 1C is a schematic diagram illustrating differences according to thepresent invention;

FIGS. 1D and 1E are schematic diagrams illustrating dual differencesaccording to the present invention;

FIG. 1F is a schematic diagram illustrating a sensing device accordingto the present invention;

FIG. 1G is a block diagram illustrating functions of a computing systemaccording to the present invention;

FIGS. 2A and 2B are schematic diagrams illustrating a driving/detectingunit and a sensing device according to the present invention;

FIG. 3A is a block diagram illustrating functions of a detecting unitaccording to the present invention;

FIGS. 3B to 3D are circuit diagrams illustrating detectors according tothe present invention;

FIGS. 3E to 3J are diagrams showing connections between a detectingcircuit and an ADC circuit according to the present invention;

FIG. 4A is a diagram illustrating position detection using binarydifferences according to the present invention;

FIGS. 4B to 4D are diagrams illustrating examples for detecting centroidpositions according to the present invention;

FIGS. 5A and 5B are exemplary schematic diagrams illustratingdetermining of zero-crossings according to the present invention;

FIGS. 5C to 5E are exemplary schematic diagrams illustrating determiningof multiple zero-crossings according to the present invention;

FIGS. 6A and 6B are exemplary schematic diagrams illustratingdetermining whether there is a single or multiple touches or approachesaccording to the present invention;

FIG. 7 is a flowchart illustrating a first embodiment of the presentinvention;

FIGS. 8A and 8B are flowcharts illustrating a second embodiment of thepresent invention;

FIGS. 9A and 9B are flowcharts illustrating a third embodiment of thepresent invention; and

FIG. 9C is an exemplary schematic diagram illustrating a touch relatedsensing information having two peaks between zero-crossings.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Some embodiments of the present invention are described in detailsbelow. However, in addition to the descriptions given below, the presentinvention can be applicable to other embodiments, and the scope of thepresent invention is not limited by such, rather by the scope of theclaims. Moreover, for better understanding and clarity of thedescription, some components in the drawings may not necessary be drawnto scale, in which some may be exaggerated relative to others, andirrelevant parts are omitted.

Sensing Information

In the present invention, sensing information can be provided by a touchsensitive device for representing 1-D, 2-D or multi-dimensional statuseson the touch sensitive device. The sensing information can be obtainedby one or more sensors and converted into a plurality of continuoussignal values by one or more Analog-to-Digital converters to representamong or change in amount of detected charges, current, voltage,capacitance, impedance or other electrical characteristics. Sensinginformation can be obtained or transmitted alternately, sequentially orin parallel, and can be compounded into one or more signals. These areobvious to those having ordinary skill in the art.

One having ordinary skill in the art may also recognize that sensinginformation described in the present invention includes, but not limitedto, a signal of a sensor, a result of the signal of the sensorssubtracted by a baseline (e.g. a signal when untouched or initialsignals), a digitally converted value of said signal or said result ofsignal subtracted by baseline or said value converted in any other ways.In other words, sensing information can be in the form of a signalstatus, a status that is converted from any electrical signal or can beconverted into electrical signal recorded in a storage medium (e.g. aregister, a memory, a magnetic disk, an optical disk), including but notlimited to analog or digital information.

Sensing information can be provided by two 1-D sensing information ondifferent axes. The two 1-D sensing information can be used to representthe sensing information on a first axis (e.g. vertical axis) and asecond axis (e.g. horizontal axis) on the touch sensitive device. Theyare used for position detection on the first and second axes,respectively, i.e. providing 1-D positions on the first and second axesor further constructing a 2-D position. In addition, the two 1-D sensinginformation can also be used for triangulation based on the distancesbetween sensors to detect a 2-D position on the touch sensitive device.

Sensing information can be 2-D sensing information that consists of aplurality of 1-D sensing information on the same axis. The 2-D sensinginformation can represent signal distribution on a 2-D plane. Forexample, a plurality of 1-D sensing information on the vertical axis anda plurality of 1-D sensing information on the horizontal axis canrepresent a signal matrix, such that position detection can be achievedby watershed algorithm or other image processing methods.

In an example of the present invention, the sensing area on the touchsensitive device includes an overlapping range of a first 2-D detectingrange detected by at least one first sensor and a second 2-D detectingrange detected by at least one second sensor. One with ordinary skill inthe art may also recognize that the sensing area can be an overlappingrange of three or more 2-D detecting ranges.

For example, the detecting range of a single sensor can be a 2-Ddetecting range. A sensor (e.g. CCD or CMOS sensor) with camera-basedoptical detection or a piezoelectric sensor with surface acoustic wavedetection obtains 1-D sensing information in the 2-D detecting range.The 1-D sensing information can be comprised of information sensed at aplurality of continuous time points, which correspond to differentangles, positions or ranges. In addition, the 1-D sensing informationcan be generated according to images obtained (e.g. by CCD-CMOS sensor)within a time interval.

Furthermore, for example, the 2-D sensing range can consist of detectingranges of a plurality of sensors. For example, the detecting range ofeach infrared photoreceptor, capacitive or resistive conductive bar orstrip, or inductive U-shape coil is a fan or stripe shaped detectingrange towards one axis. The detecting ranges of a plurality of sensorsarranged on the same axis on a line segment (straight or curved) canform a 2-D detecting range of that axis, which can be a square orfan-shaped planar or arc detecting range, for example.

In a preferred example of the present invention, the sensing area on thetouch sensitive device includes a 2-D range detected by a plurality ofsensors on the first and second axes. For example, throughself-capacitive detection, a driving signal is provided to a pluralityof first sensors, and capacitive-coupling signals or changes in saidsignal in a 2-D detecting range of these first sensors are sensed toobtain first 1-D sensing information. Furthermore, a driving signal isprovided to a plurality of second sensors, and capacitive-couplingsignals or changes in said signal in a 2-D detecting range of thesesecond sensors are sensed to obtain second 1-D sensing information.

In another example of the present invention, the sensing area on thetouch sensitive device involves a plurality of sensors detecting aplurality of 1-D sensing information in a 2-D sensing range to construct2-D sensing information. For example, when a signal source sequentiallyapplies a driving signal to sensors on a first axis, signal(s) of atleast one of sensors in a second axis is sequentially detected or on aplurality of sensors (partially or all) are simultaneously detected toobtain 2-D sensing information on the axis, wherein the sensors areadjacent or not adjacent but neighboring sensors on the second axis. Forexample, in mutual-capacitive detection or analog matrix resistivedetection, a plurality of sensors constitute a plurality of sensingareas for detecting sensing information at each respective area. Forexample, a plurality of first sensors (e.g. a plurality of firstconductive lines) and a plurality of second sensors (e.g. a plurality ofsecond conductive lines) intersect with each other to from a pluralityof overlapping regions. When a driving signal is sequentially providedto each of the first sensors, corresponding to the first sensor beingdriven by the driving signal, signal(s) or changes in signal(s) on atleast one of the second sensors on the second axis is sequentiallydetected or on a plurality of the second sensors (partially or all) onthe second axis are simultaneously detected to obtain 1-D sensinginformation corresponding to that first sensor. By collecting 1-Dsensing information corresponding to each of the first sensors together,2-D sensing information can be constructed. In an example of the presentinvention, 2-D sensing information can be regarded as an image.

One with ordinary skill in the art can appreciate that the presentinvention can be applied to touch sensitive display, for example, adisplay attached with aforementioned resistive, capacitive, surfaceacoustic wave, or other touch detection device (or referred to as touchsensitive device). Thus, sensing information obtained by the touchsensitive display or device can be regarded as touch sensitiveinformation.

In an example of the present invention, a touch sensitive device may usecontinuous signals from different time points, that is, composite signalcontinuously detected by one sensor or simultaneously by a plurality ofsensors. For example, the touch sensitive device may be inductive andcontinuously scan coils thereon to emit electromagnetic waves.Meanwhile, sensing information is detected by one or more sensors on anelectromagnetic pen and continuously compounded to form a signal. Thissignal is then converted into a plurality of continuous signal values byan ADC. Alternatively, electromagnetic waves are emitted by anelectromagnetic pen or electromagnetic waves from an inductive touchsensitive device are reflected, and sensing information is obtained by aplurality of sensors (coils) on the touch sensitive device.

Touch Related Sensing Information

When an external object (e.g. a finger) touches or approaches a touchsensitive device, electrical characteristic or changes will be generatedby sensing information at an area corresponding to the touch orproximity of the object. The larger the electrical characteristic orchanges, the closer it is to the center (e.g. centroid, center ofgravity of center of geometry) of the external object. Continuoussensing information can be regarded as constituted by a plurality ofcontinuous values whether it is digital or analog. The center of theexternal object may correspond between one or two values. In the presentinvention, a plurality of continuous values can be spatially ortemporally continuous.

A first type of 1-D sensing information provided by the presentinvention is in the form of a plurality of continuous signal values,which can be signal values detected by a plurality of sensors in a timeinterval, by a single sensor in a continuous time interval or by asingle sensor in a single time interval at different detectingpositions. In the process of representing sensing information as signalvalues, signals from respective sensors, time intervals or positions aresequentially converted into signal values, or part or all of sensinginformation is obtained, thereafter, respective signal values are thenanalyzed. When an external object touches or draws near to a sensingdevice, continuous signal values of 1-D sensing information can be thoseas shown in FIG. 1B. Position touched by the external object correspondsto the peak 14 of the sensing information, wherein peak 14 may residebetween two signal values. As described earlier, the present inventiondoes not limit the form of sensing information. Signal values can beanother form of the signals of the sensors. For brevity of thedescription, the present invention below is described in the context ofimplementations of the signal values. One with ordinary skill in the artmay appreciate the implementations of signals from the implementationsof signal values.

A second type of 1-D sensing information provided by the presentinvention is in the form of a plurality of continuous differences,compared to the signal values above, each difference is the differenceof a pair of signal values, and the sensing information represented by aplurality of differences can be regarded as differential sensinginformation. In the present invention, differential sensing informationcan be obtained directly during sensing, for example, simultaneously orcontinuously obtaining a plurality of signals, each difference beinggenerated based on a differential signal corresponding to a pair ofsensor, time intervals, or positions. The differential sensinginformation can be generated based on the original sensing informationincluding a plurality of signal values generated previously. Asdescribed earlier, the present invention does not limit the form ofsensing information. Differences can be another form of the differentialsignals. For brevity of the description, the present invention below isdescribed in the context of implementations of the differences. One withordinary skill in the art may appreciate the implementations ofdifferential signals from the implementations of differences.

In an example of the present invention, a difference can be thedifference between a pair of adjacent or not adjacent signal values, forexample, the difference between a signal value and its immediatelypreceding signal value, or between a signal value and its followingsignal value. In another example of the present invention, thedifference can be the difference between non-adjacent signal values.When an external object touches or draws close to the touch sensitivedevice, continuous differences of 1-D sensing information can be thoseshown in FIG. 1C, wherein the position of the external objectcorresponds to zero-crossing 15 of the sensing information.Zero-crossing 15 may reside between two signal values. In an example ofthe present invention, on the touch sensitive device, the position ofeach difference is the middle of the two corresponding signal values.

A third type of 1-D sensing information provided by the presentinvention is in the form of a plurality of continuous dual differences,compared to the signal values and differences above, each dualdifference can be the sum or difference of the difference for a firstpair of signal values and the difference for a second pair of signalvalues, that is, the sum or difference of the differences of two pairsof signal values. For example, two pairs of signal values include afirst signal value, a second signal value, a third signal value, and afourth signal value. The dual difference for these four signals is(second signal value−first signal value)+(third signal value−fourthsignal value), (second signal value−first signal value)−(fourth signalvalue−third signal value), (first signal value−second signalvalue)+(fourth signal value−third signal value) or (first signalvalue−second signal value)−(third signal value−fourth signal value). Inaddition, sensing information represented by continuous dual differencescan be regarded as dual-differential sensing information. In the presentinvention, a dual difference is not limited to being provided aftersignal values or differences, but can also be provided through the sumor difference after subtraction of two pairs of signals upon sensinginformation being provided, providing dual differential signal similaror equivalent to the sum or difference of the differences between twopair of signal values. As described earlier, the present invention doesnot limit the form of sensing information. Dual differences can beanother form of the dual differential signals. For brevity of thedescription, the present invention below is described in the context ofimplementations of the dual differences. One with ordinary skill in theart may appreciate the implementations of dual differential signals fromthe implementations of dual differences.

In an example of the present invention, when the external object touchesor approaches the touch sensitive device, two pairs of signal values areconstituted by three adjacent or non-adjacent signal values. In anexample of the present invention, the differences between the prior twosignal values and the latter two signal values are a first differenceand a second difference, respectively, and the dual difference is thedifference between the first difference and the second difference,wherein the first difference and the second difference both can be theresults of the preceding signal value minus the following signal valueor the following signal value minus the preceding signal value. Inanother example of the present invention, the differences between thefirst two signal values and the last two signal values are a firstdifference and a second difference, respectively, and the dualdifference is the sum of the first difference and the second difference,wherein one of the first difference and the second difference is theresult of the preceding signal value minus the following signal value,whereas the other one of the first difference and the second differenceis the result of the following signal value minus the preceding signalvalue. For example, two pairs of signal values include a first signal, asecond signal, and a third signal. The dual difference for these threesignal values is (second signal value−first signal value)+(second signalvalue−third signal value), (second signal value−first signalvalue)−(third signal value−second signal value), (first signalvalue−second signal value)+(third signal value−second signal value), or(first signal value−second signal value)−(second signal value−thirdsignal value). When two pairs of signal values are constituted by threeadjacent signal values, and an external object touches or approaches thetouch sensitive device, the continuous dual differences of 1-D sensinginformation can be those shown in FIG. 1D, wherein the position of theexternal object corresponds to middle peak 16 of the sensinginformation. Middle peak 16 may reside between two signal values. Whentwo pairs of signal values are constituted by three non-adjacent signalvalues, and an external object touches or approaches the touch sensitivedevice, the continuous dual differences of 1-D sensing information canbe those shown in FIG. 1E, wherein the position of the external objectcorresponds to middle peak 17 of the sensing information. Middle peak 17may reside between two signal values.

In the present invention, sensing information corresponding torespective sensor, time interval or position can be signals detected bythe sensors. When the signals are analog, it can be converted intodigital signal values by an ADC. Thus, the above difference can also bethe value of the difference between a pair of signals, for example,value converted from a pair of signals subtracted via a differentialamplifier. Similarly, the above dual difference can also be the valueconverted from two pairs of signals subtracted via a differentialamplifier and then added (or subtracted) together. One with ordinaryskill in the art can appreciate that the difference and dual differencedescribed by the present invention not only include being generated bysignals or signal values, but also include temporary states of records(electrical, magnetic or optical records), signals or signal valuesduring hardware or software implementations.

In other words, sensing information can be signals, differential signals(e.g. difference between a pair of signals), dual differential signals(e.g. sum or difference of two pairs of signals) on or between thesensors, and signal values, differences, dual differences(analog-to-digital converted signal values, differences or dualdifferences) can be another form. Signals and signal values,differential signals and differences, and dual differential signals anddual differences are sensing information represented at differentstages. In addition, for brevity of the description, touch relatedsensing information mentioned herein broadly refers to sensinginformation corresponding to touch or proximity of an external object,such as original touch related sensing information, differential touchrelated sensing information and dual-differential touch related sensinginformation.

One with ordinary skill in the art can appreciate that in the case ofdifferences or dual differences, zero-crossing is between at least onepositive value and at least one negative value that is between a pair ofpositive and negative values. The difference or dual difference thatcorresponds to the touch or proximity of the external object may be analternating continuous combination of at least one positive value and atleast one negative value, wherein at least one zero value is interposedbetween the at least one positive value and at least one negative value.In most cases, the difference or dual difference that corresponds to thetouch or proximity of the external object is an alternating continuouscombination of multiple positive values and multiple negative values,wherein zero-crossings between positive and negative values may be atleast a zero value or between two values.

In contrast, touch related signal values include a plurality ofcontinuous non-zero values, or an independent non-zero value notadjacent to other non-zero values. In some cases, an independentnon-zero value not adjacent to other non-zero values may be generated bynoise, which should be identified and neglected by thresholding or othertypes of mechanisms.

Since noise could generate zero-crossing similar to the touch orproximity of an external object when large, thus in an example of thepresent invention, values that fall within a zero-value range will betreated as zero values. Difference or dual difference corresponding tothe touch or proximity of an external object is an alternatingcontinuous combination of multiple values above a positive threshold andmultiple values below a negative threshold, wherein a zero-crossingbetween a value above the positive threshold and a value below anegative threshold may be at least one zero value or between two values.

In summary of the above, differential touch related sensing informationand dual-differential touch related sensing information are alternatingcontinuous combinations of at least one positive value and at least onenegative value including a zero-crossing, wherein the zero-crossing canbe at least one zero value or between the positive and negative values.In other words, a plurality of continuous zero values between positiveand negative values in the differential touch related sensinginformation and dual-differential touch related sensing information aretreated as zero-crossings, or one of which is treated as azero-crossing.

In an example of the present invention, touch related sensinginformation is set to begin with at least a positive or negative value,and from there an alternating continuous combination of at least onepositive value and at least one negative value including a zero-crossingis searched, wherein the zero-crossing may be at least one zero value orbetween positive and negative values. In differential touch relatedsensing information, alternating combinations of at least one positivevalue and at least one negative value occur symmetrically, and indual-differential touch related sensing information, alternatingcombinations of at least one positive value and at least one negativevalue do not occur symmetrically. In an example of the presentinvention, touch related sensing information is continuous non-zerovalues, e.g. a plurality of continuous non-zero signal values.

The at least one positive value above can be regarded as apositive-value set including at least one positive value. Similarly, theat least one negative value above can be regarded as a negative-valueset including at least one negative value. Thus, the above alternatingcombination can be a combination of two sets: a positive-value set and anegative-value set, or a combination of three or more set withalternating positive-value and negative-value sets. In an example of thepresent invention, at least one zero value may exist between zero, one,or multiple positive-value and negative-value sets.

System Framework

In order to more clearly illustrate how sensing information of thepresent invention is generated, the present invention uses a capacitivetouch sensitive device as an example, and one with ordinary skill in theart can readily recognize other applications such as in resistive,infrared, surface acoustic wave, or optical touch sensitive devices.

Referring to FIG. 1F, the present invention provides a positiondetecting device 100. As shown, the device includes a sensing device 120and a driving/detecting unit 130. Sensing device 120 has a sensinglayer. In an example of the present invention, the sensing layer caninclude a first sensing layer 120A and a second sensing layer 120B.First and second sensing layers 120A and 120B each has a plurality ofsensors 140, wherein first sensors 140A of first sensing layer 120Across upon second sensors 140B of second sensing layer 120B. In anotherexample of the present invention, first and second sensors 140A and 140Bare disposed in a co-planar sensing layer. Driving/detecting unit 130produces sensing information based on signals of sensors 140. In thecase of self-capacitive detection, for example, sensors 140 driven aresensed. In the case of mutual-capacitive detection, some of sensors 140not directly driven by driving/detecting unit 130 are sensed. Inaddition, sensing device 120 can be disposed on a display 110. Anoptional shielding layer (not shown) can be interposed between sensingdevice 120 and display 110.

The position detecting device 100 of the present invention can beapplied to a computing system as shown in FIG. 1G, which includes acontroller 160 and a host 170. The controller includes driving/detectingunit 130 to operatively couple sensing device 120 (not shown). Inaddition, controller 160 can include a processor 161 for controllingdriving/detecting unit 130 in generating sensing information. Sensinginformation can be stored in a memory 162 and accessible by processor161. Moreover, host 170 constitutes the main body of the computingsystem, mainly includes a central processing unit 171, a storage unit173 that can be accessed by central processing unit 171, and display 110for displaying results of operations.

In another example of the present invention, there is a transmissioninterface between controller 160 and host 170. The controlling unittransmits data to the host via the transmission interface. One withordinary skill in the art can appreciate that the transmission interfacemay include, but not limited to, UART, USB, I²C, Bluetooth, Wi-Fiwireless or wired transmission interfaces. In an example of the presentinvention, data transmitted can be position (e.g. coordinates),identification results (e.g. gesture codes), command, sensinginformation or other information provided by controller 160.

In an example of the present invention, sensing information can beinitial sensing information generated under the control of processor161, and position analysis is carried out by host 170, such as positionanalysis, gesture identification, command identification etc. In anotherexample of the present invention, sensing information can be analyzed byprocessor 161 first before forwarding determined position, gesture orcommand etc. to host 170. The present invention does not limit to thisexample, and one with ordinary skill in the art can readily recognizeother interactions between controller 160 and host 170.

Referring to FIG. 2A, in an example of the present invention,driving/detecting unit 130 may include a driving unit 130A and adetecting unit 130B. The plurality of sensors 140 of sensing device 120are operatively coupled to driving/detecting unit 130 via a plurality ofwires. In the example of FIG. 2A, driving unit 130A and detecting unit130B are operatively coupled to sensors 140A via wires W1 and to sensors140B via wires W2.

For example, in self-capacitive detection, all sensors 140A aresequentially or simultaneously driven or some of sensors 140A are drivensimultaneously in batch by driving unit 130A via wires W1 in a firsttime period. Sensing information of a first axis (1-D sensinginformation) is generated via wires W1 by detecting unit 130 based onsignals of sensors 140A. Similarly, all sensors 140B are sequentially orsimultaneously driven or some of sensors 140A are driven simultaneouslyin batch by driving unit 130A via wires W2 in a second time period.Sensing information of a second axis (1-D sensing information) isgenerated via wires W2 by detecting unit 130 based on signals of sensors140B.

For example, in mutual-capacitive detection, sensors 140B are driven bydriving unit 130 via wires W2 in a first time period, and when eachsensor 140B is respectively driven, 1-D sensing informationcorresponding to a first axis of the driven sensors is generated bydetecting unit 130B based on signals of sensors 140A via wires W1. These1-D sensing information on the first axis construct 2-D sensinginformation (or an image) on the first axis. Similarly, sensors 140A aredriven by driving unit 130 via wires W1 in a second time period, andwhen each sensor 140A is respectively driven, 1-D sensing informationcorresponding to a second axis of the driven sensors is generated bydetecting unit 130B based on signals of sensors 140B via wires W2. These1-D sensing information on the second axis construct 2-D sensinginformation (or an image) on the second axis. In addition, driving unit130A and detecting unit 130B can be synchronized via lines 132 byproviding signals. The signals on lines 132 can be provided by saidprocessor 160.

Referring to FIG. 2B, sensor device 120 can also generate 2-D sensinginformation on only a single axis. In this example, sensors 140B aredriven by wires W2, and when each sensor 140B is respectively driven,1-D sensing information of the driven sensor is generated by detectingunit 130B based on the signals of sensors 140A via wires W1. These 1-Dsensing information constitute 2-D sensing information (or an image).

In other words, position detecting device 100 of the present inventionis capable of producing 1-D sensing information in 2 axes or 2-D sensinginformation in 2 axes, producing both 1-D and 2-D sensing information in2 axes, or producing 2-D sensing information in a single axis. Thepresent invention may include but not limited to said capacitiveposition detecting device, one with ordinary skill in the art canappreciate other applications, such as in resistive, capacitive, surfaceacoustic wave, or other touch sensitive device.

Referring to FIG. 3A, detecting unit 130B is operatively coupled to thesensing device via wires (e.g. W1). The operative coupling can beachieved by a switching circuit 310, which can be one or more electricalelements such as multiplexers and/or switches. One with ordinary skillin the art can recognize other use of switching circuits. Signals ofsensors 140 can be detected by a detecting circuit 320. When signaloutput by detecting circuit 320 is analog, it is then passed through ADCcircuit 330 to generate sensing information SI. Sensing information SIcan be analog or digital. In a preferred example of the presentinvention, sensing information is digital, but the present invention isnot limited to the above example. One with ordinary skill in the art canappreciate that detecting circuit 320 and ADC circuit 330 can beintegrated in one or more circuits.

Detecting circuit 320 can be comprised of one or more detectors, eachreceiving a signal from at least one sensor 140 and generating anoutput. The detectors can be detectors 340, 350 and 360 shown in FIGS.3B to 3D.

In an example of the present invention, the detection of the signals ofsensors 140 can be achieved by an integrator. One with ordinary skill inthe art can appreciate other circuits that measure electricalcharacteristics (e.g. voltage, current, capacitance, induction etc.),such as an ADC, can be applied to the present invention. An integratorcan be implemented by an amplifier Cint, which includes an input (e.g.as shown by integrator 322 of FIG. 3B) or a pair of input (e.g. as shownby integrator 324 of FIGS. 3C and 3D) and an output. Output signal canbe used by ADC circuit 330 to generate values of sensing information SI,each of these values can be controlled by a reset signal, such as areset signal Sreset shown in FIGS. 3B to 3D.

In another example of the present invention, signals of sensors 140 areAC signals that vary with a pair of half cycles. Thus, the detection ofthe signals of sensors 140 also changes with different half cycles. Forexample, signals of sensors 140 are detected in the prior half cycle,and inverse signals of sensors 140 are detected in the latter halfcycle, or vice versa. Therefore, the detection of the signals of sensors140 can be controlled by a synchronizing signal Ssync, as shown in FIGS.3B to 3C. Synchronizing signal Ssync and the signals of sensors 140 arein sync or having the same cycle. For example, synchronizing signalSsync is used to control one or more switches (e.g. switching circuits321, 323, 325) to switch between base points P1 and P2, so as to detectthe signals of sensor 140 in the prior half cycle, and to detect theinverse signals of sensor 140 in the latter half cycle. In FIG. 3B, theinverse signals are provided by an inverter Cinv.

In yet another example of the present invention, the detection of thesignals of sensors 140 is performed in at least a predetermined timeinterval (or phase) in at least a cycle. Detection can be done in atleast an interval in the first half cycle and at least an interval inthe second half cycle; or in at least an interval in only the first orsecond half cycle. In a preferred example of the present invention, atleast a preferred time interval in a cycle is scanned as the detectioninterval, wherein noise interference in this detection interval issmaller than in other intervals. Scanning of the detection interval canbe determined by the detection of the signal of at least one sensor ineach interval in at least a cycle. Upon determining a detectioninterval, detection of the signals of sensors is performed only in thatdetection interval, and this can be controlled by a signal, such as anenable signal Senable in FIGS. 3B to 3D.

The present invention generates the values of sensing information SIbased on the signal of at least one sensor 140. In an example of thepresent invention, sensing information SI consists of a plurality ofsignal values. As shown in FIG. 3B, an input 311 is operatively coupledto a sensor 140 for detecting a signal and a signal value of sensinginformation SI is generated through ADC circuit 330. In another exampleof the present invention, sensing information SI consists of a pluralityof differences. As shown in FIG. 3C, a pair of inputs 312 and 313 areoperatively coupled to a sensor 140 for detecting a differential signaland a difference (or single difference) of sensing information SI isgenerated through ADC circuit 330. In yet another example of the presentinvention, sensing information SI consists of a plurality of dualdifferences. As shown in FIG. 3D, three inputs 314, 315 and 316 areoperatively coupled to a sensor 140 for detecting a dual differentialsignal and a dual difference of sensing information SI is generatedthrough ADC circuit 330. A dual differential signal is generated fromthe difference between a pair of differential signals; each differentialsignal is generated based on signals of a pair of sensors. In otherwords, a dual differential signal is generated based on signals of afirst pair of sensors and a second pair of sensors, wherein the firstpair of sensors are the first two sensors in the three sensors, and thesecond pair of sensors are the latter two sensors in the three sensors;these three sensors can be adjacent or not adjacent.

In a preferred example of the present invention, detecting circuit 320includes a plurality of detectors, which simultaneously generate all orsome values of sensing information SI. As shown in FIGS. 3E to 3J,detecting circuit 320 can comprise of a detector 340, 350 or 360. Theoutput of the detector is then converted into values of sensinginformation SI by ADC circuit 330.

ADC circuit 330 includes at least one ADC. Each ADC may output values ofsensing information SI based on an output of only one detector, as shownin FIGS. 3E, 3G and 3I. Alternatively, an ADC may output values ofsensing information SI based on outputs of several detectors in turn, asshown in FIGS. 3F, 3H and 3J. Values of sensing information SI can begenerated in parallel or in series. In a preferred example of thepresent invention, values of sensing information SI are generated inseries, which can be achieved by a switching circuit 370, for example,by outputting values of sensing information SI from a plurality of ADCsin turn, as shown in FIGS. 3E, 3G, and 3I, or by providing outputs of aplurality of integrators to a single ADC in turn to generate values ofsensing information SI, as shown in FIGS. 3F, 3H and 3J.

Accordingly, in an example of the present invention, sensing informationSI having a plurality of signal values are generated based on signals ofa plurality of sensors, wherein each signal value is generated based ona signal from a sensor, as shown in FIGS. 3B, 3E and 3F. In anotherexample of the present invention, sensing information SI having aplurality of differences are generated based on signals of a pluralityof sensors, wherein each difference is generated based on signals from apair of sensors, as shown in FIGS. 3C, 3G and 3H. In yet another exampleof the present invention, sensing information SI having a plurality ofdual differences are generated based on signals of a plurality ofsensors, wherein each dual difference is generated based on signals fromthree sensors, as shown in FIGS. 3D, 3I and 3J.

In FIGS. 3E to 3J, wires connecting the detectors may include but notlimited to wires W1 and wires W2. Connection between an integrator and awire can be direct or indirect through a switching circuit, as shown inFIG. 3A. In an example of the present invention, values of sensinginformation are generated by multiple detections by at least a detectorof detecting circuit 320. Detecting circuit 320 selects some of thesensors for detection by using switching circuit 310. In addition, onlyselected sensors are driven by driving unit 130A, for example, inself-capacitive detection. Moreover, only selected sensors and somesensors adjacent to the selected sensors are driven by driving unit130A.

In the present invention, sensors can consist of a plurality ofconductive sheets and wires, such as a set of rhombic or squareconductive sheets connected together by wires. Structurally, conductivesheets of first sensors 140A and second sensors 140B may be arranged indifferent or same planes. For example, an insulating or piezoresistivelayer can be interposed between first and second sensing layers 120A and120B, wherein the piezoresistive layer is made from anisotropicconductive gel. Moreover, for example, conductive sheets of firstsensors 140A and second sensors 140B are substantially arranged in thesame plane, with the wires of first sensors 140A bridging over the wiresof second sensors 140B. In addition, pads can be disposed between thewires of first sensors 140A and second sensors 140B. These pads can bemade of insulating or piezoresistive materials.

Thus, in an example of the present invention, each sensor is responsiblefor a sensing range. There are a plurality of sensors, including aplurality of first sensors and a plurality of second sensors. Thesensing ranges of these first sensors are parallel to each other, whilethe sensing ranges of these second sensors are parallel to each other.The parallel sensing ranges of the first and second sensors intersect toform an intersecting matrix. For example, the first and second sensorsare two lines of infrared receivers arranged horizontally and verticallyfor sensing horizontal scanning ranges and vertical scanning ranges,respectively. The horizontal and vertical scanning ranges form anintersecting matrix. The horizontal and vertical scanning ranges areimplemented by several lines of intersecting capacitive or resistivesensors.

Conversion of Sensing Information

The signal values, differences and dual differences of the sensinginformation can be converted into one another. In a first conversionmethod provided by the present invention, continuous signal values areconverted into continuous differences; each difference being thedifference between a pair of adjacent or non-adjacent signal values.

In a second conversion method provided by the present invention,continuous signal values are converted into continuous dual differences;each dual difference being the sum or difference between two pairs ofsignal values.

In a third conversion method provided by the present invention,continuous differences are converted into continuous signal values; eachdifference is added to all the preceding or following differences toobtain a corresponding signal value, thereby constructing continuoussignal values.

In a fourth conversion method provided by the present invention,continuous differences are converted into continuous dual differences;each dual difference is the sum or difference of a pair of adjacent ornon-adjacent differences.

In a fifth conversion method provided by the present invention,continuous dual differences are converted into continuous differences;each dual difference is added to all the preceding or following dualdifferences to obtain a corresponding difference, thereby constructingcontinuous differences.

In a sixth conversion method provided by the present invention,continuous dual differences are converted into continuous signal values.In an example of the present invention, each dual difference is added toall the preceding dual differences to obtain a corresponding difference,thereby constructing continuous differences, and thereafter eachdifference subtracts all the following differences to generate acorresponding signal value, thereby constructing continuous signalvalues. In another example of the present invention, each dualdifference subtracts all the preceding dual differences to obtain acorresponding difference, thereby constructing continuous differences,and thereafter each difference is added to all the following differencesto generate a corresponding signal value, thereby constructingcontinuous signal values.

Adding all the preceding or following differences or dual differences togenerate a corresponding signal value or difference is performed byforward or backward accumulation.

These conversion methods may include but not limited to the conversionof 1-D sensing information, one with ordinary skill in the art canappreciate that the above conversion methods can be applied to 2-Dsensing information or 3-D (or even more dimensional) sensinginformation. In addition, one with ordinary skill in the art canappreciate that the above conversion methods can be performed by saidcontroller 160 or host 170.

Accordingly, in an example of the present invention, a first form ofsensing information (e.g. 1-D or 2-D sensing information) detected isconverted into sensing information for position analysis. In anotherexample of the present invention, a first form of sensing information isconverted into a second form of sensing information, and then the secondform of sensing information is converted into sensing information forposition analysis, for example, continuous dual difference is convertedto continuous signal values.

One-Dimension Position Analysis

A first type of position analysis provided by the present inventioninvolves analyzing the position of a zero-crossing based on a pluralityof differences in sensing information as the corresponding position ofan external object. One with ordinary skill in the art can recognizethat position analysis may include but not limited to determination ofthe touch or proximity of an object, that is, determination of acorresponding position of an external object may include but not limitedto the touch or proximity of the object.

In an example of the present invention, a pair of neighboringdifferences including a positive and a negative value is searched, thatis, a pair of positive and negative values at both sides of azero-crossing, and then the position of the zero-crossing in this pairof neighboring differences is then determined, for example, a slope isdetermined based on this pair of adjacent differences to infer theposition of the zero-crossing. In addition, order of the positive andnegative values can be used in conjunction for determining the positionof the zero-crossing. Said pair of neighboring differences can bedirectly adjacent to each other, or not adjacent and with at least onezero value between them. In addition, a pair of neighboring differenceswith a predetermined order of arrangement can be searched for, forexample, a pair of neighboring differences with a positive valueappearing first and followed by a negative value is searched for.

In another example of the present invention, a threshold is used fordetermining the starting position of the search. From there, a pair ofneighboring differences including a positive and a negative value issearched for, and then the position of a zero-crossing is determinedbased on the found pair of neighboring differences. One with ordinaryskill in the art can appreciate that in the case that sensinginformation is represented by differences, when sensing informationcorresponding to the touch or proximity of an external object is above apositive threshold or below a negative threshold, the searching usingthese threshold values may include but not limited to the determinationof the touch or proximity of the external object. In other words,whenever sensing information is above a positive threshold or below anegative threshold, it can be determined that there is a zero-crossingin the sensing information that corresponds to a touch or proximity ofan external object.

For example, a threshold generates binary values corresponding topositive differences. For example, a difference smaller than a threshold(e.g. positive threshold) is represented by 0 or false, and a differencelarger than the threshold is represented by 1 or true, and the positionof a 1 or true in adjacent differences 10 is regarded as the startingposition for a backward search of a zero-crossing. Similarly, adifference larger than a threshold (e.g. negative threshold) isrepresented by 0 or false, and a difference smaller than the thresholdis represented by 1 or true, and the position of a 1 or true in adjacentdifferences 01 is regarded as the starting position for a forward searchof a zero-crossing.

For example, Table 1 and FIG. 4B are examples of using threshold fordetermining touch or proximity of an external object.

TABLE 1 First Binary Second Binary Signal Difference Difference IndexValue Difference (T1 = 4) (T2 = −4) 1 0 0 0 0 2 0 0 0 0 3 0 3 0 3 4 3 71 0 5 10 −7 0 1 6 3 −3 0 0 7 0 0 0 0 8 0 0 0 0 9 0 2 0 0 10 2 5 1 0 11 70 0 0 12 7 −5 0 1 13 2 −2 0 0 14 0 0 0 0 15 0 0 0 0

This example includes signal values or difference of 15 sensors anddetermination results using a positive threshold T1 (e.g. 4) and anegative threshold T2 (e.g. −4). In the determination results using thepositive threshold, the starting positions are the 4th and 10thdifferences, that is, the position of a 1 in adjacent differences 10. Inthe diagram with vertical-stripe bar, it is found that there are twoinstances of touch or proximity of external objects. Similarly, in thedetermination results using the negative threshold, the startingpositions are the 5th and 12th differences, that is, the position of a 1in adjacent differences 01. In the diagram with horizontal-stripe bar,it is found that there are two instances of touch or proximity ofexternal objects. One with skill the art can appreciate that the numberof starting position corresponds to the number of instances of touch orproximity of external objects. The present invention does not limit toonly two instances of touch or proximity of external objects, but therecan be more.

In another example of the present invention, an interval for azero-crossing is determined using a first threshold and a secondthreshold, which may include but not limited to touch or proximity of anexternal object, and then the position of the zero-crossing is searchedwithin this interval. For example, a first threshold produces binaryvalues of positive differences, for example, a difference smaller thanthe first threshold is represented by 0 or false, and a differencelarger than the first threshold is represented by 1 or true, and theposition of a 1 in adjacent differences 10 is regarded as the startingposition. In addition, a second threshold produces binary values ofnegative differences, for example, a difference larger than the secondthreshold is represented by 0 or false, and a difference smaller thanthe second threshold is represented by 1 or true, and the position of a1 in adjacent differences 01 is regarded as the end position. Moreover,the starting and end positions are paired to form intervals forsearching zero-crossings. In an example of the present invention, aslope is used to determine the zero-crossing between a starting position(e.g. position of a 1 in 10) and an end position (e.g. position of a 1in 01). One with ordinary skill in the art can appreciate that thestarting and end positions are interchangeable. One with ordinary skillin the art can appreciate that touch related sensing information can bedetermined by regarding the position of 1 in 01 as the starting positionand the position of 1 in 10 as the end position.

Take again the example shown in FIG. 4A and Table 1, after pairing, afirst search interval is between the 4th and 5th differences, and asecond search interval is between the 10th and 12th differences:

One with ordinary skill in the art can appreciate that positive andnegative thresholdings can be performed simultaneously (or in parallel).Interval pairing can be carried out by pairing a determined startingposition with an end position that determined immediately afterwards.

In an example of the present invention, thresholds can be generated bysensing information. For example, a threshold value can be determined bymultiplying a maximum of the absolute values of all differences by aratio (e.g. a ratio smaller than one, such as 0.9), or a positivethreshold value can be determined by multiplying a maximum of allpositive differences by a ratio, or a negative threshold value can bedetermined by multiplying a minimum of all negative differences by aratio. In other words, a threshold value can be static or dynamic. Thus,when the absolute value of a threshold is relatively large, it ispossible that external object is determined when using the positivethresholding but not in the negative thresholding, or vice versa. Alarger threshold value is favorable for noise or ghost points filtering,while a smaller threshold value is favorable for avoiding miss of realtouch or for determining approaching of external objects.

From the above, it is clear that, corresponding to the same touch orapproaching of an object, regardless of a backward search from astarting position identified using a positive threshold value or aforward search from a starting position identified using a negativethreshold value, the same zero-crossing will be searched. Thus, in anexample of the present invention, search for a zero-crossing starts fromstarting positions identified using positive and negative thresholdvalues, and the number of external touch or approaching is determinedbased on the number of zero-crossings found, and then the positions ofthe zero-crossings are determined. When the values at both sides of azero-crossing that corresponds to an external touch or approaching arefirst positive and then negative, the search for zero-crossing isbackward from the starting position when using positive thresholding,whereas the search for zero-crossing is forward from the startingposition when using negative thresholding, and vice versa. In addition,an external touch or approaching may not always exhibit startingpositions in both positive and negative thresholdings.

A second type of position analysis provided by the present inventioninvolves analyzing the position of centroid (position of center ofweight or weighted average position) based on a plurality of signalvalues or dual differences in sensing information as the correspondingposition of an external object.

In an example of the present invention, a threshold value is used todetermine the centroid position of signal values or dual differences, asshown in FIGS. 4B and 4D. A threshold can generate binary valuescorresponding to signal values or dual differences. For example, asignal value or dual difference smaller than a threshold is representedby 0 or false, and a signal value or dual difference larger than thethreshold is represented by 1 or true. In this example, a signal valueor dual difference represented by 1 or true is used in determiningcentroid position. One with ordinary skill in the art can appreciateother ways for determining a centroid position of signal values or dualdifferences using a threshold. For example, a signal value or dualdifference represented by 1 or true, as well as a plurality of signalvalues or dual differences at either side thereof, are used indetermining centroid position. As another example, in a continuousseries of adjacent signal value or dual difference represented by 1 ortrue, a number (i) of and a number (j) of signal values or dualdifferences before and after a signal value or dual difference that isat the center of the series are taken to determine the centroidposition.

In another example of the present invention, continuous signal values ordual differences are converted into continuous differences to identifythe center signal value or dual difference that corresponds to azero-crossing, and i and j signal values or dual differences before andafter the center signal value or dual difference are used fordetermining the centroid position.

In another example of the present invention, a zero-crossing isdetermined by continuous differences, and the continuous differences areconverted into continuous signal values or dual differences, and thenthe center signal value or dual difference that corresponds to thezero-crossing is identified, thereafter, i and j signal values or dualdifferences before and after the center signal value or dual differenceare used for determining the centroid position.

Assuming that using i and j signal values respectively before and afterthe nth signal value as a centroid calculation range, the centroidposition can be determined based on each signal value C_(k) and itsposition in the centroid calculation range as follows:

$C_{centroid} = \frac{\sum\limits_{k = {n - i}}^{n + j}{X_{k}C_{k}}}{\sum\limits_{k = {n - i}}^{n + j}C_{k}}$

wherein X_(k) can be a 1-D coordinate (e.g. X or Y coordinate) or 2-Dcoordinates (e.g. (X, Y)).

Assuming the difference between the k−1th signal value and the kthsignal value is D_(k), and the kth dual difference isDD_(k)=D_(k−1)−D_(k)=(C_(k)−C_(k−1))−(C_(k+1)−C_(k))=2C_(k)−C_(k−1)+C_(k+1),and assuming using i and j signal values respectively before and afterthe nth dual difference DD_(n) as a centroid calculation range, thecentroid position can be determined based on each dual difference DD_(k)in the centroid calculation range as follows:

${DD}_{centroid} = \frac{\sum\limits_{k = {n - i}}^{n + j}{X_{k}{DD}_{k}}}{\sum\limits_{k = {n - i}}^{n + j}{DD}_{k}}$

wherein X_(k) can be a 1-D coordinate (e.g. X or Y coordinate) or 2-Dcoordinates (e.g. (X, Y)). One with ordinary skill in the art cansimilarly appreciate the calculation for centroid position when the kthdual difference isDD_(k)=(C_(k)−C_(k−2))−(C_(k+2)−C_(k))=2C_(k)−C_(k−2)+C_(k+2). This willnot be described further.

In another example of the present invention, signal values or dualdifferences used for determining centroid position is obtained by firstsubtracting a base value. For example, this base value can be theaverage of all signal values or dual differences, the average of aplurality of signal values or dual differences at either sides of thesignal values or dual differences used for centroid positiondetermination, or the average of a plurality of signal values or dualdifferences not used for centroid position determination that areadjacent to either sides of the signal values or dual differences usedfor centroid position determination. One with ordinary skill in the artcan recognize other ways of determining the base value. For example, thebase value can be determined based on a first ratio of at least onesignal value or dual difference at one side and a second ratio of atleast one signal value or dual difference at the other side.

Taken the average of the ith signal value C_(n−i), and the jth signalvalue I_(n+j) respectively before and after the nth signal value as basevalue

${C_{{base}{({i,j})}}\left( {C_{{base}{({i,j})}} = \frac{C_{n - i} + C_{n + j}}{2}} \right)},$

and using i and j signal values respectively before and after the nthsignal value as a centroid calculation range, the centroid position canbe determined based on each signal value C_(k) minus the base valueC_(base(i,j)) in the centroid calculation range as follows:

$C_{{base}{({i,j})}} = \frac{C_{n - i} + C_{n + j}}{2}$${C_{k} - C_{{base}{({i,j})}}} = {\frac{{2C_{k}} - C_{n - i} - C_{n + j}}{2} = {\frac{\left( {C_{k} - C_{n - i}} \right)}{2} + \frac{\left( {C_{k} - C_{n + j}} \right)}{2}}}$$C_{cnetroid} = {\frac{\sum\limits_{k = {n - i}}^{{n - i} \leq k \leq {n + j}}{X_{k}\left( \frac{{2C_{k}} - C_{n - i} - C_{n + j}}{2} \right)}}{\sum\limits_{k = {n - i}}^{{n - i} \leq k \leq {n + j}}\frac{{2C_{k}} - C_{n - i} - C_{n + j}}{2}} = \frac{\sum\limits_{k = {n - i}}^{{n - i} \leq k \leq {n + j}}{X_{k}\left( {{2C_{k}} - C_{n - i} - C_{n + j}} \right)}}{\sum\limits_{k = {n - i}}^{{n - i} \leq k \leq {n + j}}\left( {{2C_{k}} - C_{n - i} - C_{n + j}} \right)}}$

wherein X_(k) can be a 1-D coordinate (e.g. X or Y coordinate) or 2-Dcoordinates (e.g. (X, Y)).

A third type of position analysis provided by the present inventioninvolves analyzing the position of centroid (position of center ofweight or weighted average position) based on a plurality of differencesin sensing information as the corresponding position of an externalobject.

Assuming the difference between the k−1th signal value C_(k−1) and thekth signal value C_(k) is D_(k).

(C_(k) − C_(n − i)) = D_(n − (i − 1)) + D_(n − (i − 2)) + … + D_(k)(C_(k) − C_(n + j)) = −(D_(k + 1) + D_(k + 2) + … + D_(n + j))${C_{k} - C_{{base}{({i,j})}}} = {\frac{{2C_{k}} - C_{n - i} - C_{n + j}}{2} = \frac{\left( {D_{n - {({i - 1})}} + D_{n - {({i - 2})}} + \ldots + D_{k}} \right) - \left( {D_{k + 1} + D_{k + 2} + \ldots + D_{n + j}} \right)}{2}}$${C_{k} - C_{{base}{({i,j})}}} = \frac{{\sum\limits_{s = {n - {({i - 1})}}}^{k}D_{s}} - {\sum\limits_{s = {k + 1}}^{n + j}D_{s}}}{2}$$C_{cnetroid} = {\frac{\sum\limits_{s = {n - i}}^{{n - i} \leq k \leq {n + j}}{X_{s}\left( \frac{{\sum\limits_{s = {n - {({i - 1})}}}^{k}D_{s}} - {\sum\limits_{s = {k + 1}}^{n + j}D_{s}}}{2} \right)}}{\sum\limits_{s = {n - i}}^{{n - i} \leq k \leq {n + j}}\frac{{\sum\limits_{s = {n - {({i - 1})}}}^{k}D_{s}} - {\sum\limits_{s = {k + 1}}^{n + j}D_{s}}}{2}} = \frac{\sum\limits_{s = {n - i}}^{{n - i} \leq k \leq {n + j}}{X_{k}\left( {{\sum\limits_{s = {n - {({i - 1})}}}^{k}D_{s}} - {\sum\limits_{s = {k + 1}}^{n + j}D_{s}}} \right)}}{\sum\limits_{s = {n - i}}^{{n - i} \leq k \leq {n + j}}\left( {{\sum\limits_{s = {n - {({i - 1})}}}^{k}D_{s}} - {\sum\limits_{s = {k + 1}}^{n + j}D_{s}}} \right)}}$

Accordingly, the centroid position C_(centroid) can be calculated basedon the differences between the signal values, wherein the differences inthe centroid calculation range are D_(n−(i−1)), D_(n−(i−2)), . . . ,D_(k), D_(k+1), . . . , D_(n+j), D_(n+(j+1)). In other words, thecentroid position C_(centroid) can be calculated based on thedifferences in the centroid calculation range.

As an example, assuming 1 signal value before and after the nth signalvalue are taken for determining the centroid position, differences inthe centroid calculation range can be used to calculate it. This isproven as follows:

D_(n − 1) = C_(n − 1) − C_(n − 2) D_(n) = C_(n) − C_(n − 1)D_(n + 1) = C_(n + 1) − C_(n) D_(n + 2) = C_(n + 2) − C_(n + 1)$C_{{base}{({2,2})}} = \frac{C_{n - 2} + C_{n + 2}}{2}$${C_{n - 1} - C_{{base}{({2,2})}}} = {\frac{{2C_{n - 1}} - C_{n - 2} - C_{n + 2}}{2} = \frac{D_{n - 1} - D_{n} - D_{n + 1} - D_{n + 2}}{2}}$${C_{n} - C_{{base}{({2,2})}}} = {\frac{{2C_{n}} - C_{n - 2} - C_{n + 2}}{2} = \frac{D_{n - 1} + D_{n} - D_{n + 1} - D_{n + 2}}{2}}$${C_{n + 1} - C_{{base}{({2,2})}}} = {\frac{{2C_{n + 1}} - C_{n - 2} - C_{n + 2}}{2} = \frac{D_{n - 1} + D_{n} + D_{n + 1} - D_{n + 2}}{2}}$$C_{centroid} = \frac{\begin{matrix}{{X_{n - 1}\left( {C_{n - 1} - C_{{base}{({2,2})}}} \right)} +} \\{{X_{n}\left( {C_{n} - C_{{base}{({2,2})}}} \right)} + {X_{n + 1}\left( {C_{n + 1} - C_{{base}{({2,2})}}} \right)}}\end{matrix}}{\left( {C_{n - 1} - C_{{base}{({2,2})}}} \right) + \left( {C_{n} - C_{{base}{({2,2})}}} \right) + \left( {C_{n + 1} - C_{{base}{({2,2})}}} \right)}$$C_{centroid} = {\begin{pmatrix}{{X_{n - 1}\left( {D_{n - 1} - D_{n} - D_{n + 1} - D_{n + 2}} \right)} +} \\{{X_{n}\left( {D_{n - 1} + D_{n} - D_{n + 1} - D_{n + 2}} \right)} +} \\{X_{n + 1}\left( {D_{n - 1} + D_{n} + D_{n + 1} - D_{n + 2}} \right)}\end{pmatrix}/\begin{pmatrix}{\left( {D_{n - 1} - D_{n} - D_{n + 1} - D_{n + 2}} \right) +} \\{\left( {D_{n - 1} + D_{n} - D_{n + 1} - D_{n + 2}} \right) +} \\\left( {D_{n - 1} + D_{n} + D_{n - 1} + D_{n + 2}} \right)\end{pmatrix}}$

One with ordinary skill in the art can recognize that taking i and jsignal values, differences or dual differences respectively before andafter the nth signal value as the centroid calculation range can beapplied to determine the signal value, difference or dual difference onthe centroid position.

From the above description, it can be seen that the present inventionperforms position detection by analyzing sensing information that maynot only include originally obtained signal values, differences, or dualdifferences, but also signal values, differences, or dual differencesconverted from originally obtained sensing information. By analyzing 1-Dor 2-D sensing information on two difference axes (e.g. X and Y axes)that corresponds to the same object, that is, by performing 1-D or 2-Dposition analysis on two different axes, the positions (or coordinates)of the object on these two axes can be obtained, thereby a 2-D position(or 2-D coordinates) can be constructed.

One with ordinary skill in the art can appreciate that operations of theabove 1-D position analysis can be performed by said controller 160 orhost 170.

Two-Dimension Position Analysis

2-D sensing information can be comprised of a plurality of 1-D sensinginformation, wherein each 1-D sensing information includes sensinginformation that corresponds to a plurality of first 1-D positions, andeach 1-D sensing information corresponds to a second 1-D position. Thus,2-D position analysis can at least include 1-D position analysis on aplurality of 1-D touch sensitive information, that is, 2-D positionanalysis can at least include a plurality of 1-D position analysis.

In addition, in a first example of the present invention, a first 1-Dcentroid position of any external object on each first dimensionalsensing information is a 2-D position (e.g. 2-D coordinates (first 1-Dcentroid position, second 1-D position of the first dimensional sensinginformation)), and can be used to calculate a 2-D centroid position ofthe object (or center of geometry), wherein the weight of each 1-Dcentroid position can be a signal value or dual difference of theexternal object on the corresponding first dimensional sensinginformation (e.g. one or average or interpolation of two signal valuesor dual differences closest to the 1-D centroid position on the firstdimensional sensing information), or sum of signal values or dualdifferences of the external object on the corresponding firstdimensional sensing information.

Thus, 2-D position analysis can perform 1-D position analysis on eachfirst dimensional sensing information, and analyze a 2-D centroidposition of each external object based on at least one 2-D position thatcorresponds to each external object.

In addition, in a second example of the present invention, 2-D positionanalysis may include performing 1-D position analysis on a plurality of1-D sensing information on a first axis (or a first dimension),respectively, and based on at least one 1-D position corresponding toeach external object on the first axis, analyzing a first 1-D centroidposition of each external object on the first axis. Similarly, 2-Dposition analysis may further include performing 1-D position analysison a plurality of 1-D sensing information on a second axis (or a seconddimension), respectively, and based on at least one 1-D positioncorresponding to each external object on the second axis, analyzing asecond 1-D centroid position of each external object on the second axis.

By pairing the first 1-D centroid position on the first axis with thesecond 1-D centroid position on the second axis for each externalobject, a 2-D position for each external object can be analyzed.

In other words, 2-D position analysis may include performing 1-Dposition analysis on 2-D sensing information on two different axes (e.g.2-D sensing information on the first axis and 2-D sensing information onthe second axis) to obtain a 2-D position for each external object.

In addition, in a third example of the present invention, 2-D positionanalysis may include analyzing 1-D centroid position corresponding toeach external object from a plurality of 1-D sensing information on afirst axis, and based on a 2-D position corresponding to each 1-Dsensing information, determining a 2-D position of each 1-D centroidposition that corresponds to each external object on the first axis. 2-Dposition analysis may further include analyzing 1-D centroid positioncorresponding to each external object from a plurality of 1-D sensinginformation on a second axis, and based on a 2-D position correspondingto each 1-D sensing information, determining a 2-D position of each 1-Dcentroid position that corresponds to each external object on the secondaxis. 2-D position analysis may further include analyzing a 2-D centroidposition based on the 2-D positions of all 1-D centroid positions on thefirst and second axes that correspond to each external object.

One with ordinary skill in the art can appreciate that 2-D sensinginformation can determine the position of each external object by imageprocessing, for example, using watershed or other image processingtechniques. As another example, watershed algorithm can be used toanalyze the position of each watershed, and then the centroid positionis calculated using sensing information near each watershed position toobtain a more accurate position.

In a fourth example of the present invention, a plurality of 1-D sensinginformation originally obtained can be represented by signal values ordual differences, which construct an image (or matrix) formed from 2-Dsensing information. Watershed algorithm or other image processingtechniques can be used for position analysis. Alternatively, a“connected component” algorithm can be used, which analyzes connectedportions in an image to determine an image of each external object, andfurther determines the position or the type of the object, such as afinger, a palm or a pen.

In a fifth example of the present invention, a plurality of 1-D sensinginformation originally obtained can be represented by differences, whichare then converted into signal values or dual differences, which in turnconstruct an image (or matrix) formed from 2-D sensing information.Watershed algorithm or other image processing techniques can be used forposition analysis.

In a sixth example of the present invention, a plurality of 1-D sensinginformation originally obtained can be represented by differences. Byperforming position analysis on each 1-D sensing information, theposition of each zero-crossing, as well as the signal value or dualdifference on the position of each zero-crossing can be determined,thereby constructing an image (or matrix) formed from 2-D sensinginformation. Watershed algorithm or other image processing techniquescan be used for position analysis.

The dual difference of a zero-crossing point can be generated by twodirectly adjacent differences, for example, a zero-crossing is betweenthe k−1th difference and the kth difference, and the dual difference atthis zero-crossing point is DD_(k)=D_(k−1)−D_(k). The signal value of azero-crossing point can be generated after converting all differencesrepresenting the 1-D sensing information into signal values, orgenerated based on a plurality of differences closest to thezero-crossing. For example, zero-crossing is closest to the nth signalvalue, and the average of ith signal value C_(n−i) and the jth signalvalue I_(n+j) before and after the nth signal value is taken as the basevalue

${C_{{base}{({i,j})}}\left( {C_{{base}{({i,j})}} = \frac{C_{n - i} + C_{n + j}}{2}} \right)},{{{{and}\mspace{14mu} C_{n}} - C_{{base}{({i,j})}}} = \frac{{2C_{n}} - C_{n - i} - C_{n + j}}{2}}$

is taken as the signal value, then

${C_{n} - C_{{base}{({i,j})}}} = {\frac{{2C_{n}} - C_{n - i} - C_{n + j}}{2} = {\frac{\left( {D_{n - {({i - 1})}} + D_{n - {({i - 2})}} + \ldots + D_{n}} \right) - \left( {D_{n + 1} + D_{n + 2} + \ldots + D_{n + j}} \right)}{2}.}}$

In other words, between the n−(i−1)th difference to the (n+j)thdifference, the signal value at zero-crossing can be determined.

In a seventh example of the present invention, a plurality of 1-Dsensing information originally obtained can be represented by signalvalues and dual differences and are then converted to differences. Byperforming analysis on each 1-D sensing information, the position ofeach zero-crossing is determined. In conjunction with the signal valueor dual difference on each zero-crossing position, an image (or matrix)formed by 2-D sensing information can be constructed. Watershedalgorithm or other image processing techniques can be used for positionanalysis.

In an eighth example of the present invention, when or in the process ofobtaining 2-D sensing information on the first axis, 1-D sensinginformation on the second axis is also obtained. After performingposition analysis on the position of the 2-D sensing information on thefirst axis, the 1-D position or 2-D position of each external object onthe first axis can be obtained. In addition, after performing positionanalysis on the position of the 2-D sensing information on the secondaxis, the 1-D position of each external object on the second axis can beobtained. The 1-D position on the second axis can be paired up with the1-D position on the first axis to form a 2-D position, or can be used toreplace or correct the position on the second axis in the 2-D positionon the first axis.

One with ordinary skill in the art can appreciate that the operations ofthe above 2-D position analysis can be performed by said controller 160or host 170. In addition, in an example of the present invention, the1-D distance or 2-D distance between each 1-D centroid positioncorresponding to the same touch or approach and at least one other 1-Dcentroid position corresponding to the same touch or approach is withina threshold. In another example of the present invention, the weight ofeach 1-D centroid position corresponding to the same touch or approachis greater than a threshold.

In the following description, a touch related sensing information can bea touch related sensing information or one of multiple touch relatedsensing information in a sensing information. Operations related totouch related sensing information can be applied not only to specifictouch related sensing information but also to all touch related sensinginformation of the present invention.

In an example of the present invention, the position of a zero-crossingcan be determined by a pair of positive and negative values of the touchrelated sensing information. A zero-crossing exists between a positiveand a negative value. From this positive and negative value and theirassociated positions, the slope can be determined, which is then used toestimate the position of the zero-crossing, that is, the position at thezero value of a line between the positive and negative values isdetermined based on the slope.

In another example of the present invention, the pair of positive andnegative values can be respectively determined using a positivethreshold Tp and a negative threshold Tn. As shown in FIG. 5A. positivevalues are at points a and points b, or the value closest to point a(e.g. the N+1^(th) difference) or the value closest to point b (e.g. theN+3^(th) difference). Similarly, negative values are at points c andpoints d, or the value closest to point c (e.g. the N+4^(th) difference)or the value closest to point d (e.g. the N+6^(th) difference). Forexample, the positive value is the N+3^(th) difference and the negativevalue is the N+4^(th) difference, and a virtual line is drawn from thepeak of the positive value to the trough of the negative value, and theslope of the line is then determined, which is then used to calculatethe position for this line at zero value, i.e. the zero-crossing Z.

In an example of the present invention, the position of thezero-crossing can be determined by the maximum (peak) and minimum(trough) of the touch related sensing information. As shown in FIG. 5B,the slope can be obtained from a maximum and a minimum and theirassociated positions, and the position of the zero-crossing is estimatedbased on the slope, that is, the position of the line connecting betweenthe maximum and the minimum at zero value is determined based on theslope. For example, touch related sensing information is present betweenthe N^(th) difference and the N+6^(th) difference, and the maximum andthe minimum are the N+2^(th) difference and the N+5^(th) differencerespectively. A virtual line is drawn from the peak of the maximum tothe trough of the minimum. The position of the zero-crossing is at zerovalue on this line, which can be calculated by the slope of the line.

The maximum and minimum can be determined by the thresholds mentionedearlier. For example, positive threshold Tp and negative threshold Tncan be fixed or dynamically adjusted, so that the maximum and theminimum stand out from positive threshold Tp and negative threshold Tn.Alternatively, a group of positive values greater than positivethreshold Tp and a group of negative values less than negative thresholdTn are obtained based on positive threshold Tp and negative thresholdTn, and then the maximum and minimum are determined from the groups ofpositive and negative values.

Touch related sensing information in a sensing information can be one ormore, that is, the sensing device is touched or approached by one ormore external object. For example, as shown in FIG. 5C, a sensinginformation includes two touch related sensing information. A group ofpositive values (or maximum) and a group of negative values (or minimum)in each touch related sensing information are determined based onpositive threshold Tp and negative threshold Tn, and then twozero-crossings Z1 and Z2 are then determined. In the present invention,the determination of zero-crossings may include but not limited to thepositions and the number of zero-crossings.

In fact, the determination of zero-crossings implies the determinationof the number of external touches or approaches. For example, twozero-crossings are determined in FIG. 5C, this implies that there aretwo external touches or approaches.

When two external touches or approaches are too close to each other, atouch related sensing information will be formed. As shown in FIG. 5D, acurve line at the top indicates the signal values, and a bend line atthe bottom indicates the corresponding difference. When examining thecurve line, there may be two external touches, but when examining thebend line, there are three zero-crossings.

In an example of the present invention, zero-crossings are determineddepending on the order of appearance of each pair of positive andnegative values. For example, only zero-crossings between pairs ofpositive first then negative values are taken into account. On the otherhand, zero-crossings between pairs of negative first then positivevalues are not taken into account. Alternatively, only zero-crossingsbetween pairs of negative first then positive values are taken intoaccount, but zero-crossings between pairs of positive first thennegative values are not taken into account. As shown in FIG. 5D, whenonly zero-crossings between pairs of positive first then negative valuesare taken into account, two zero-crossings are determined. In otherwords, when there is a single touch or approach, and touch relatedsensing information is positive value first then negative, only thezero-crossing between a pair of positive first then negative values isdetermined, and vice versa.

In another example of the present invention, zero-crossings at oddnumber of positions are considered. As shown in FIG. 5E, a firstzero-crossing Z3, a third zero-crossing Z4, and a fifth zero-crossing Z5are considered. Accordingly, the position of each external touch orapproach is analyzed from the touch related sensing information with aplurality of zero-crossings, and in the present invention, the positionof each external touch or approach is analyzed from the touch relatedsensing information with odd number of zero-crossings, wherein thenumber of analyzed positions is different from the number ofzero-crossings.

The number of analyzed positions different from the number ofzero-crossings may include but not limited to the number ofzero-crossings greater than the number of analyzed positions, or thenumber of zero-crossings less than the number of analyzed positions, forexample, two external touches or approaches are determined from a touchrelated sensing information with a single zero-crossing.

In a preferred example of the present invention, a sensor I with asignal value which is first to exceed a preset range is determined, anda sensor J−1 preceding a sensor J with a signal value which is first tonot exceed the preset range is also determined. Two centroids orgeometric centers are calculated from sensor I and sensor J−1 to obtaintwo positions. In addition, in a preferred example of the presentinvention, a base value for a centroid or geometric center is calculatedbased on the average of signal values of the K^(th) sensors from eitherside of a sensor. The coordinate is calculated by dividing the sum of(signal value−base value)*coordinate value) of each sensor within thek−1^(th) sensor range from either side of a sensor with the sum of thecoordinate value or signal value of each sensor within the k−1^(th)sensor range from either side of a sensor, wherein if the differencebetween the signal value and the base value is negative, the result ofthe subtraction is represented by 0.

Referring to FIGS. 6A and 6B, there are 11 sensors, including sensors1˜11. In FIG. 6A, the signal values of the sensor 1˜11 are (0, 0, 0, 3,4, 4, 5, 3, 0, 0, 0), respectively, and the differences are (0, 0, 3, 1,0, 1, −2, −3, 0, 0), respectively, and the present range is between 1.9and −1.9. Thus, sensor I and sensor J−1 are sensors 4 and 7,respectively. The coordinate corresponding to sensor 4 is calculated byfirst obtaining the average of signal values of the second sensor ateither side of sensor 4 (0 for sensor 2 and 4 for sensor 6). In thiscase, the average is 2. Thus, the coordinate is5.17=(0*3.5+1*4.5+2*5.5)/(0+1+2). Similarly, the coordinatecorresponding to sensor 7 is 6.33, and the distance of the two is 1.17.In the same way, as shown in FIG. 6B, sensor I and sensor J−1 aresensors 4 and 7, respectively, and the coordinates corresponding tosensors 4 and 7 are 5.5 and 6.04, respectively, and the distance betweenthe two is 0.54. Thus, when the first threshold is 0.8, FIG. 6A isregarded as having two external touches and FIG. 6B is regarded ashaving only a single touch.

In the example of FIG. 6A, 5.17 and 6.33 can be used as the position ofthe external touches. In the example of FIG. 6B, the average or theposition of the zero-crossing of 5.5 and 6.04 can be used as theposition of the single external touch. Comparing FIGS. 6A and 6B,although the numbers of values in the touch related sensing informationare the same, and both have a single zero-crossing, but a touch relatedsensing information indicating a single or multiple touches can bedistinguished by using the determination provided by the presentinvention.

The determination of sensors I and J−1 or J are merely examples of thepresent invention, and the present invention is not limited to these.One with ordinary skill in the art can recognize other ways fordetermining two positions from touch related sensing information andusing the distance between positions of the centroids or geometriccenters of these two positions on the touch related sensing informationto determine whether there is a single touch or multiple touches. Forexample, sensors I and J may be the K^(th) sensor from the touch relatedsensing information, respectively. As another example, sensors I and Jmay be determined based on a pair of zero-crossing of dual-differentialsensing information, e.g. based on signal values at correspondingzero-crossings, or the k^(th) signal values from corresponding zerocrossings. The method for determining two positions from touch relatedsensing information can be varied depending on the distances betweensensors, signal properties, or the thickness of a carrier or a substrateon which the sensors are provided.

Referring to FIG. 7, a method for analyzing positions is provided by afirst embodiment of the present invention. First, in step 710, a sensinginformation including at least one zero-crossing is obtained, whereineach zero-crossing is between a positive and a negative value.Thereafter, in step 720, a plurality of positions that are different innumbers to the zero-crossings are analyzed. In other words, in additionto analyzing each position when the number of zero-crossings equals thenumber of external touches or approaches, each position can also beanalyzed when the number of zero-crossings does not equal the number ofexternal touches or approaches.

As mentioned before, the number of zero-crossings can be greater or lessthan the number of analyzed positions. For example, from odd number ofzero-crossings, the location of the zero-crossing at each odd locationis determined to analyze the positions that are less than the number ofzero-crossings. As another example, a touch related sensing informationwith a single zero-crossing can be determined as a single touch orapproach (e.g. one touch) or multiple touches or approaches (e.g. twotouches).

The number of zero-crossing may also be even, for example, when sensinginformation is dual-differential sensing information, each position isanalyzed based on a pair of zero-crossings or the peak between a pair ofzero-crossings.

Sensing information can be generated based on signals of a plurality ofsensors. For example, sensing information may be differential sensinginformation. Each value of the differential sensing information isgenerated based on signals of a pair of sensors in the sensors. Asanother example, sensing information may be dual-differential sensinginformation. Each value of the dual-differential sensing information isgenerated based on signals of three sensors in the sensors. Moreover,sensing information can also be generated based on another sensinginformation consisting of a plurality of signal values, a plurality ofdifferences, or a plurality of dual differences (e.g. as the conversionof sensing information described previously).

Steps 710 and 720 can be performed by controller 160 or host 170.Moreover, the obtaining of sensing information can be achieved by firstgenerating another sensing information by controller 160 based onsignals of a plurality of sensors, and then converting into the sensinginformation described in step 710 by controller 160 or host 170 based onthe another sensing information. For relevant contents, please refer topervious descriptions, and will not be described further.

In the best mode, referring to FIG. 8A, a method for determining a touchor touches is provided by a second embodiment of the present invention.First, in step 810, a sensing information is obtained. Then, in step820, each touch related sensing information in the sensing informationis determined. Thereafter, in step 830, each touch related sensinginformation having a single zero-crossing is analyzed to determinewhether the touch related sensing information having a zero-crossingindicates a touch (a touch or approach by a single external object) ormultiple touches (multiple touches or approaches by external objects).

An example of said analyzing is shown in FIG. 8B. First, in step 831, apair of values is determined based on each touch related sensinginformation having a single zero-crossing. Next, in step 832, thepositions of a pair of centroids are calculated based on the pair ofvalues of each touch related sensing information having a singlezero-crossing. Then, in step 833, it is determined whether there is asingle touch or multiple touches based on the distance between thepositions of the pair of centroids of each touch related sensinginformation having a single zero-crossing.

In step 831, one of the pair of values can be determined based onpositive threshold Tp as described above, and the other one based onnegative threshold Tn. For example, at least one positive value greaterthan the positive threshold is determined, and the one of the pair ofvalues is determined based on the first value, the maximum value, thelast value, the value adjacent to the first value, the value adjacent tothe maximum value, and the value adjacent to the last value of said atleast one value. Similarly, at least one negative value smaller than thepositive threshold is determined, and the other one of the pair ofvalues is determined based on the first value, the minimum value, thelast value, the value adjacent to the first value, the value adjacent tothe minimum value, and the value adjacent to the last value of said atleast one value.

In step 832, a pair of ranges in the sensing information is determinedbased on the pair of values of each touch related sensing informationhaving a single zero-crossing, and the positions of a pair of centroidis calculated based on this pair of ranges of each touch related sensinginformation having a single zero-crossing. For example, a pair of rangein a differential sensing information is determined, and centroidlocations are calculated based on this pair of ranges. The sensinginformation can be generated by converting from another sensinginformation consisting of a plurality of signal values or a plurality ofdual differences. Moreover, a pair of ranges in the another sensinginformation can also be determined by the pair of values of each touchrelated sensing information having a single zero-crossing, and thepositions of a pair of centroid is calculated based on this pair ofranges of each touch related sensing information having a singlezero-crossing. For example, a pair of ranges is determined from sensinginformation consisting of a plurality of signal values or a plurality ofdual differences, and centroid positions in these signal values or dualdifferences are calculated based on this pair of ranges, wherein thepair of values corresponds to another pair of values in these signalvalues or dual differences. This pair of values include a plurality ofvalues at either sides of said another pair of values.

In step 833, based on the distance of the positions of a pair ofcentroids, it is determined whether there is a touch or approach by asingle external object (e.g. single touch) or multiple touches orapproaches by multiple objects (e.g. multiple touches). For example,when the distance is smaller than a threshold, it is determined there isa single touch or approach; else there are multiple touches orapproaches. In an example of the present invention, when it isdetermined that there are multiple touches or approaches, if thedistance is greater than another threshold, then it is determined thatthere are three or more touches or approaches, or a palm touch orapproach; else there are two touches or approaches. In another exampleof the present invention, the number of detectable positions on asensing device is limited to two, when the distance is greater than athreshold, it is determined there are two external touches orapproaches.

Steps 810 to 830 can be performed by controller 160 or host 170.Moreover, the obtaining of sensing information can be achieved by firstgenerating another sensing information by controller 160 based onsignals of a plurality of sensors, and then converting into the sensinginformation described in step 810 by controller 160 or host 170 based onthe another sensing information. For relevant contents, please refer topervious descriptions, and will not be described further.

Referring to FIG. 9A, a method for determining a touch or touches isprovided by a third embodiment of the present invention. First, in step910, a sensing information is obtained. Then, in step 920, each touchrelated sensing information in the sensing information is determined.Thereafter, in step 930, each touch related sensing information havingtwo peaks between zero-crossings is determined. As shown in FIG. 9C,there are two peaks between a pair of zero-crossings 91. Then, in step940, each touch related sensing information having two peaks betweenzero-crossings is analyzed to determine whether each touch relatedsensing information having two peaks between zero-crossings indicates asingle or multiple external touches or approaches.

Thereafter, as further shown in step 950, each touch related sensinginformation having one peak between zero-crossings is determined. Then,a position is analyzed based on each touch related sensing informationhaving one peak between zero-crossings. As shown in FIGS. 4B to 4D,positions corresponding to external touches or approaches can be foundaccording to a threshold. Steps 950 and 960 can be performed before orsimultaneously with steps 930 and 940.

In steps 930 to 950, said one peak or two peaks can be determined usinga positive threshold or a negative threshold. For example, all peaksgreater than the positive threshold are found, or all peaks smaller thanthe positive threshold are found, and each zero-crossing is determined,so as to determine each touch related sensing information having onepeak between zero-crossings and each touch related sensing informationhaving two peaks between zero-crossings.

In addition, in step 940, the distance between the two peaks are usedfor determining whether there is a single or multiple touches orapproaches. For example, when the distance between two peaks is smallerthan a threshold, it is determined that there is a single touch orapproach; else there are multiple touches or approaches.

Also shown in steps 941 and 942 in FIG. 9B, each touch related sensinginformation having two peaks between zero-crossings is converted intoeach touch related sensing information having a single zero-crossing,and the touch related sensing information having a single zero-crossingof each touch related sensing information having two peaks betweenzero-crossings is used for determining whether there is a single ormultiple touches or approaches. For example, a dual-differential touchrelated sensing information is converted into a differential touchrelated sensing information, which is then used for determining whetherthere is a single or multiple touches or approaches according to FIG. 8Band its associated descriptions.

Steps 910 to 960 can be performed by controller 160 or host 170.Moreover, the obtaining of sensing information can be achieved by firstgenerating another sensing information by controller 160 based onsignals of a plurality of sensors, and then converting into the sensinginformation described in step 710 by controller 160 or host 170 based onthe another sensing information. For relevant contents, please refer topervious descriptions, and will not be described further.

The above embodiments are only used to illustrate the principles of thepresent invention, and they should not be construed as to limit thepresent invention in any way. The above embodiments can be modified bythose with ordinary skill in the art without departing from the scope ofthe present invention as defined in the following appended claims.

1. A method for determining a touch or touches, comprising: obtaining asensing information; determining each touch related sensing informationin the sensing information; and analyzing each touch related sensinginformation having a single zero-crossing to determine whether eachtouch related sensing information having a single zero-crossingindicates a touch or touches.
 2. The method of claim 1, wherein theanalyzing includes: determining a pair of values based on each touchrelated sensing information having a single zero-crossing; calculatingthe locations of a pair of centroids based on the pair of values of eachtouch related sensing information having a single zero-crossing; anddetermining whether there is a touch or touches based on the distancebetween the locations of the pair of centroids of each touch relatedsensing information having a single zero-crossing.
 3. The method claim2, wherein the determining of the pair of values includes: determiningone of the pair of values based on a positive threshold; and determiningthe other one of the pair of values based on a negative threshold. 4.The method claim 3, wherein the determining of the one of the pair ofvalues includes: determining at least one positive value greater thanthe positive threshold based on the positive threshold; and determiningthe one of the pair of values based on the first value, the maximumvalue, the last value, the value adjacent to the first value, the valueadjacent to the maximum value, and the value adjacent to the last valueof the at least one positive value.
 5. The method claim 3, wherein thedetermining of the other one of the pair of values includes: determiningat least one negative value smaller than the negative threshold based onthe negative threshold; and determining the other one of the pair ofvalues based on the first value, the minimum value, the last value, thevalue adjacent to the first value, the value adjacent to the minimumvalue, and the value adjacent to the last value of the at least onenegative value.
 6. The method claim 2, wherein the calculating of thelocations of a pair of centroids based on the pair of values of eachtouch related sensing information having a single zero-crossingincludes: determining a pair of ranges in the sensing information basedon the pair of values of each touch related sensing information having asingle zero-crossing; and calculating the locations of the pair ofcentroids based on the pair of ranges of each touch related sensinginformation having a single zero-crossing.
 7. The method claim 2,wherein the calculating of the locations of a pair of centroids based onthe pair of values of each touch related sensing information having asingle zero-crossing includes: determining a pair of ranges in anothersensing information based on the pair of values of each touch relatedsensing information having a single zero-crossing; and calculating thelocations of the pair of centroids based on the pair of ranges of eachtouch related sensing information having a single zero-crossing.
 8. Themethod claim 7, wherein the sensing information is generated based onthe another sensing information.
 9. The method claim 7, wherein theanother sensing information is generated based on the sensinginformation.
 10. The method claim 7, wherein the another sensinginformation including a plurality of signal values, a plurality ofdifferences, or a plurality of dual differences.
 11. A device fordetermining a touch or touches, comprising a controller or a host forperforming the following operations: obtaining a sensing information;determining each touch related sensing information in the sensinginformation; and analyzing each touch related sensing information havinga single zero-crossing to determine whether each touch related sensinginformation having a single zero-crossing indicates a touch or touches.12. The device of claim 11, wherein the analyzing includes: determininga pair of values based on each touch related sensing information havinga single zero-crossing; calculating the locations of a pair of centroidsbased on the pair of values of each touch related sensing informationhaving a single zero-crossing; and determining whether there is a touchor touches based on the distance between the locations of the pair ofcentroids of each touch related sensing information having a singlezero-crossing.
 13. The device claim 12, wherein the determining of thepair of values includes: determining one of the pair of values based ona positive threshold; and determining the other one of the pair ofvalues based on a negative threshold.
 14. The device claim 13, whereinthe determining of the one of the pair of values includes: determiningat least one positive value greater than the positive threshold based onthe positive threshold; and determining the one of the pair of valuesbased on the first value, the maximum value, the last value, the valueadjacent to the first value, the value adjacent to the maximum value,and the value adjacent to the last value of the at least one positivevalue.
 15. The device claim 13, wherein the determining of the other oneof the pair of values includes: determining at least one negative valuesmaller than the negative threshold based on the negative threshold; anddetermining the other one of the pair of values based on the firstvalue, the minimum value, the last value, the value adjacent to thefirst value, the value adjacent to the minimum value, and the valueadjacent to the last value of the at least one negative value.
 16. Thedevice claim 12, wherein the calculating of the locations of a pair ofcentroids based on the pair of values of each touch related sensinginformation having a single zero-crossing includes: determining a pairof ranges in the sensing information based on the pair of values of eachtouch related sensing information having a single zero-crossing; andcalculating the locations of the pair of centroids based on the pair ofranges of each touch related sensing information having a singlezero-crossing.
 17. The device claim 12, wherein the calculating of thelocations of a pair of centroids based on the pair of values of eachtouch related sensing information having a single zero-crossingincludes: determining a pair of ranges in another sensing informationbased on the pair of values of each touch related sensing informationhaving a single zero-crossing; and calculating the locations of the pairof centroids based on the pair of ranges of each touch related sensinginformation having a single zero-crossing.
 18. The device claim 17,wherein the sensing information is generated based on the anothersensing information.
 19. The device claim 17, wherein the anothersensing information is generated based on the sensing information. 20.The device claim 17, wherein the another sensing information including aplurality of signal values, a plurality of differences, or a pluralityof dual differences.
 21. The device claim 11, wherein the sensinginformation is obtained from a plurality of dual-differential valuesthat each dual-differential value is based on the signals of threesensors of a plurality of sensors separately, wherein the three sensorsare adjacent or non-adjacent.